<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>QSculpt: IDocument Class Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">QSculpt
   &#160;<span id="projectnumber">0.0.1a</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#signals">Signals</a> &#124;
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">IDocument Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="IDocument" -->
<p><code>#include &lt;<a class="el" href="_i_document_8h_source.html">IDocument.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for IDocument:</div>
<div class="dyncontent">
 <div class="center">
  <img src="class_i_document.png" usemap="#IDocument_map" alt=""/>
  <map id="IDocument_map" name="IDocument_map">
<area href="class_document.html" alt="Document" shape="rect" coords="0,56,71,80"/>
</map>
 </div></div>

<p><a href="class_i_document-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><b>ObjectType</b> { <b>Mesh</b>, 
<b>Box</b>, 
<b>Sphere</b>, 
<b>Group</b>
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><b>ChangeType</b> { <b>AddObject</b>, 
<b>RemoveObject</b>, 
<b>ObjectChanged</b>
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a728ed4fcb9b6831565c25f61723d1456"></a><!-- doxytag: member="IDocument::SharedPtr" ref="a728ed4fcb9b6831565c25f61723d1456" args="" -->
typedef std::shared_ptr<br class="typebreak"/>
&lt; <a class="el" href="class_i_document.html">IDocument</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SharedPtr</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae59c24ec23648fae8cc356922a725d09"></a><!-- doxytag: member="IDocument::const_shared_ptr" ref="ae59c24ec23648fae8cc356922a725d09" args="" -->
typedef std::shared_ptr&lt; const <br class="typebreak"/>
<a class="el" href="class_i_document.html">IDocument</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>const_shared_ptr</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4dcc5f81eb5fd72d58b1341fa71a40e"></a><!-- doxytag: member="IDocument::WeakPtr" ref="ae4dcc5f81eb5fd72d58b1341fa71a40e" args="" -->
typedef std::weak_ptr&lt; <a class="el" href="class_i_document.html">IDocument</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>WeakPtr</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad6b8826083042512b1859749bfc1a99b"></a><!-- doxytag: member="IDocument::const_weak_ptr" ref="ad6b8826083042512b1859749bfc1a99b" args="" -->
typedef std::weak_ptr&lt; const <br class="typebreak"/>
<a class="el" href="class_i_document.html">IDocument</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>const_weak_ptr</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a285a670623e5f6ca13a318bf1501fa"></a><!-- doxytag: member="IDocument::Ptr" ref="a1a285a670623e5f6ca13a318bf1501fa" args="" -->
typedef std::unique_ptr<br class="typebreak"/>
&lt; <a class="el" href="class_i_document.html">IDocument</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>Ptr</b></td></tr>
<tr><td colspan="2"><h2><a name="signals"></a>
Signals</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac33cdbb0077be7ee6ef6b1dd854c67d1"></a><!-- doxytag: member="IDocument::changed" ref="ac33cdbb0077be7ee6ef6b1dd854c67d1" args="(IDocument::ChangeType type, ISurface *object)" -->
void&#160;</td><td class="memItemRight" valign="bottom"><b>changed</b> (IDocument::ChangeType type, <a class="el" href="class_i_surface.html">ISurface</a> *object)</td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_document.html#a80f5da57ef51179196aeecf3118370b2">IDocument</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_document.html#a8e01151e3225f57df514f5d3996086a2">~IDocument</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_document.html#a1938928d6be86098bd39e8afe290cf11">loadFile</a> (const QString &amp;fileName)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_document.html#ad5f9e1b4ec84adbb510df6526d86ec67">saveFile</a> (const QString &amp;fileName)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab59d9fa83fa1e92f74e18ca47b742942"></a><!-- doxytag: member="IDocument::selectObject" ref="ab59d9fa83fa1e92f74e18ca47b742942" args="(int iid)=0" -->
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>selectObject</b> (int iid)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a621f34f2a8e6538ce27c999374579613"></a><!-- doxytag: member="IDocument::getSelectedObjects" ref="a621f34f2a8e6538ce27c999374579613" args="() const =0" -->
virtual QList&lt; SceneNode::WeakPtr &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>getSelectedObjects</b> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a25bb6f9044019b6721aecfc8cee80796"></a><!-- doxytag: member="IDocument::sceneIterator" ref="a25bb6f9044019b6721aecfc8cee80796" args="()=0" -->
virtual <a class="el" href="class_iterator.html">Iterator</a>&lt; <a class="el" href="class_scene_node.html">SceneNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>sceneIterator</b> ()=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28c440698f2378d88707d6b05b1d3bd8"></a><!-- doxytag: member="IDocument::constSceneIterator" ref="a28c440698f2378d88707d6b05b1d3bd8" args="() const =0" -->
virtual <a class="el" href="class_iterator.html">Iterator</a>&lt; <a class="el" href="class_scene_node.html">SceneNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>constSceneIterator</b> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual SceneNode::WeakPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_document.html#a07c7ac0748ccc8ddfae3f0633e4f5ca9">rootNode</a> ()=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual SceneNode::WeakPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_document.html#a4e06e2e2418df184bd0dd619dab7dfee">rootNode</a> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Scene::WeakPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_document.html#a2aab4df018a40ba90336e480615ee422">scene</a> ()=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Scene::WeakPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_document.html#a818cd1f2398cd03e890dbef7fed89764">scene</a> () const =0</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Interface that should implement every kind of document.</p>
<dl class="author"><dt><b>Author:</b></dt><dd>Juan Roberto Cabral Flores &lt;<a href="mailto:roberto.cabral@gmail.com">roberto.cabral@gmail.com</a>&gt; </dd></dl>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a80f5da57ef51179196aeecf3118370b2"></a><!-- doxytag: member="IDocument::IDocument" ref="a80f5da57ef51179196aeecf3118370b2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">IDocument::IDocument </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p><a class="el" href="class_i_document.html">IDocument</a> default constructor. </p>

</div>
</div>
<a class="anchor" id="a8e01151e3225f57df514f5d3996086a2"></a><!-- doxytag: member="IDocument::~IDocument" ref="a8e01151e3225f57df514f5d3996086a2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual IDocument::~IDocument </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default virtual destructor. </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a1938928d6be86098bd39e8afe290cf11"></a><!-- doxytag: member="IDocument::loadFile" ref="a1938928d6be86098bd39e8afe290cf11" args="(const QString &amp;fileName)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void IDocument::loadFile </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>fileName</em></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Load file </p>

<p>Implemented in <a class="el" href="class_document.html#a4acc767804cb38da1d2ad1431b703797">Document</a>.</p>

</div>
</div>
<a class="anchor" id="a07c7ac0748ccc8ddfae3f0633e4f5ca9"></a><!-- doxytag: member="IDocument::rootNode" ref="a07c7ac0748ccc8ddfae3f0633e4f5ca9" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual SceneNode::WeakPtr IDocument::rootNode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Get the root scene node of the document. </p>

<p>Implemented in <a class="el" href="class_document.html#a865b79e7cf114a12aa5d52ff9b5dbe24">Document</a>.</p>

</div>
</div>
<a class="anchor" id="a4e06e2e2418df184bd0dd619dab7dfee"></a><!-- doxytag: member="IDocument::rootNode" ref="a4e06e2e2418df184bd0dd619dab7dfee" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual SceneNode::WeakPtr IDocument::rootNode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Get the root node of the document </p>

<p>Implemented in <a class="el" href="class_document.html#a198dbd0140fcac786e7f35824ffa959f">Document</a>.</p>

</div>
</div>
<a class="anchor" id="ad5f9e1b4ec84adbb510df6526d86ec67"></a><!-- doxytag: member="IDocument::saveFile" ref="ad5f9e1b4ec84adbb510df6526d86ec67" args="(const QString &amp;fileName)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void IDocument::saveFile </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>fileName</em></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Save file </p>

<p>Implemented in <a class="el" href="class_document.html#a037f1e265c7fb02011cced3de4c87687">Document</a>.</p>

</div>
</div>
<a class="anchor" id="a2aab4df018a40ba90336e480615ee422"></a><!-- doxytag: member="IDocument::scene" ref="a2aab4df018a40ba90336e480615ee422" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual Scene::WeakPtr IDocument::scene </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Get the scene object of the document. The scene object is a container with all the objects or actors in the scene. </p>

<p>Implemented in <a class="el" href="class_document.html#a45bba9ac3624ef9bcf57c541601a5615">Document</a>.</p>

</div>
</div>
<a class="anchor" id="a818cd1f2398cd03e890dbef7fed89764"></a><!-- doxytag: member="IDocument::scene" ref="a818cd1f2398cd03e890dbef7fed89764" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual Scene::WeakPtr IDocument::scene </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Get the scene object of the document. The scene object is a container with all the objects or actors in the scene. </p>

<p>Implemented in <a class="el" href="class_document.html#a6c839b840925ebc20bf77ceed4d77d76">Document</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>qsculpt/include/<a class="el" href="_i_document_8h_source.html">IDocument.h</a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>



<hr class="footer"/><address class="footer"><small>
Generated on Thu May 31 2012 16:19:52 for QSculpt by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.5.1
</small></address>

</body>
</html>
